package local;

import java.util.ArrayList;
import java.util.Date;

public class Utilisateur extends Personne {

	private Integer idUtilisateur;
	private String pwd;
	private String pseudonyme;
	private Utilisateur emprunteur;
	private static ArrayList<EmpruntEnCours> empruntEnCours = new ArrayList<>();
	
	
	
	//CONSTRUCTEUR
	
	
	
	public Utilisateur(String nom, String prenom, Date dateNaissance,
			String sexe, int idUtilisateur, String pwd, String pseudonyme) {
		
		super(nom, prenom, dateNaissance, sexe);
		
		
	}
	
	
	
	public Utilisateur(String nom, String prenom, Date dateNaissance, String sexe,
		int idUtilisateur, String pwd) {

}

	public Utilisateur(String nom, String prenom, Date dateNaissance,
			String sexe, int idUtilisateur) {
		
	}

	public Utilisateur(String nom, String prenom) {
		super(nom, prenom);
	}

	public Utilisateur(String nom, String prenom, int idUtilisateur) {
		super(nom,prenom);
		this.idUtilisateur = idUtilisateur;
		
	}

	public Utilisateur(int idUtilisateur, String pseudonyme) {
		
		this.idUtilisateur = idUtilisateur;
		this.pseudonyme = pseudonyme;
		
	}
	
	public Utilisateur(Exemplaire exemplaire, Date dateEmprunt){
		
		
	}
	
	public Utilisateur(Utilisateur emprunteur, Exemplaire exemplaire,
			Date dateEmprunt) {
		
	}
	
public Utilisateur() {
		
	}
	

//getter
	
	
	



	public Integer getIdUtilisateur() {
		return idUtilisateur;
	}

	
	public String getPwd() {
		return pwd;
	}
	
	
	public String getPseudonyme() {
		return pseudonyme;
	}

	
	
public ArrayList<EmpruntEnCours> getEmpruntEnCours() {
		return empruntEnCours;
	}

	public void setEmpruntEnCours(ArrayList<EmpruntEnCours> empruntEnCours) {
		this.empruntEnCours = empruntEnCours;
	}
	
	

	//setter	
	public void setIdUtilisateur(Integer idUtilisateur) {
		this.idUtilisateur = idUtilisateur;
	}

	public void setPwd(String pwd) {
		this.pwd = pwd;
	}


	public void setPseudonyme(String pseudonyme) {
		this.pseudonyme = pseudonyme;
	}
	
	


		public Utilisateur getEmprunteur() {
		return emprunteur;
	}

	public void setEmprunteur(Utilisateur emprunteur) {
		this.emprunteur = emprunteur;
	}

		public ArrayList<EmpruntEnCours> getEmpruntEnCourse() {
			return empruntEnCours;
		}


		public void setEmpruntdExemplaire(ArrayList<EmpruntEnCours> empruntEnCours) {
			this.empruntEnCours = empruntEnCours;
		}
		
		
//methodes
		
		
		
		public Integer getNbEmpruntsEnCours(){
			return this.empruntEnCours.size();
		}

		public static void addEmpruntsEnCours(EmpruntEnCours ep){
			
			empruntEnCours.add(ep);
			
		}
		
		public EmpruntEnCours [] getEmpruntsEnCours(){
			int i = 0;
			if (empruntEnCours.size() >0)
			{	
				EmpruntEnCours [] empruntsTb = new EmpruntEnCours[empruntEnCours.size()];
				
			for(EmpruntEnCours t: empruntsTb){
				
				empruntsTb[i] = t;
				i++;
			}
			return empruntsTb;			
			}
			return null;
		}

		@Override
		public String toString() {
			return "Utilisateur [idUtilisateur=" + idUtilisateur + ", pwd="
					+ pwd + ", pseudonyme=" + pseudonyme + ", empruntEnCours="
					+ empruntEnCours + ", getNom()=" + getNom()
					+ ", getPrenom()=" + getPrenom() + ", getDateNaissance()="
					+ getDateNaissance() + ", getSexe()=" + getSexe()
					+ ", toString()=" + super.toString() + "]";
		}


		
		
		
		
		
		
		
		
}





